/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package wasolicitudesfiec.consultas;
import java.sql.*;
import entidad.Personarol;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;
/**
 *
 * @author kabad
 */
public class ConsultasPersonarol{
private Connection con;

public boolean HLmodificarPersonarol(Personarol val) throws SQLException{
return modificarPersonarol(val.getFkIdPersona(), val.getFkIdRol());
}

public boolean eliminarPersonarol(int fkIdPersona, int fkIdRol) throws SQLException{
boolean exitoOperacion = true;

PreparedStatement proc=con.prepareStatement(
"call eliminarPersonarol(?,?) ");
proc.setInt(1, fkIdPersona);
proc.setInt(2, fkIdRol);
proc.execute();
return exitoOperacion;


}

public boolean HLeliminarPersonarol(Personarol val) throws SQLException{
return eliminarPersonarol(val.getFkIdPersona(), val.getFkIdRol());
}

public void setConexion(Connection con) {
this.con=con;
}

public Personarol nuevoPersonarol() throws SQLException{
Personarol reg=new Personarol();

PreparedStatement proc=con.prepareStatement(
"call nuevoPersonarol() ");
ResultSet rs=proc.executeQuery();
if (rs.next()) {
reg.setFkIdPersona(rs.getInt(1));
reg.setFkIdRol(rs.getInt(2));
}else reg=null;
return reg;
}

public Personarol HLnuevoPersonarol(Personarol val) throws SQLException{
return nuevoPersonarol();
}

public Personarol leerPersonarol(int fkIdPersona, int fkIdRol) throws SQLException{
Personarol reg=new Personarol();

PreparedStatement proc=con.prepareStatement(
"call leerPersonarol(?,?) ");
proc.setInt(1, fkIdPersona);
proc.setInt(2, fkIdRol);
ResultSet rs=proc.executeQuery();
if (rs.next()) {
reg.setFkIdPersona(rs.getInt(1));
reg.setFkIdRol(rs.getInt(2));
}else reg=null;
return reg;


}

public Personarol HLleerPersonarol(Personarol val) throws SQLException{
return leerPersonarol(val.getFkIdPersona(), val.getFkIdRol());
}

public Vector<Personarol> leerVariosPersonarol() throws SQLException{
Vector<Personarol> datos=new Vector<Personarol>();
Personarol reg;

PreparedStatement proc=con.prepareStatement(
"call leerVariosPersonarol() ");
ResultSet rs=proc.executeQuery();
while (rs.next()) {
reg = new Personarol();
reg.setFkIdPersona(rs.getInt(1));
reg.setFkIdRol(rs.getInt(2));
datos.add(reg);
}//end while
return datos;

}

public Vector<Personarol> leerVariosPersonarolPorIdRol(int idRol) throws SQLException{
Vector<Personarol> datos=new Vector<Personarol>();
Personarol reg;

PreparedStatement proc=con.prepareStatement(
"call leerVariosPersonarolPorIdRol(?) ");
proc.setInt(1, idRol);
ResultSet rs=proc.executeQuery();
while (rs.next()) {
reg = new Personarol();
reg.setFkIdPersona(rs.getInt(1));
reg.setFkIdRol(rs.getInt(2));
datos.add(reg);
}//end while
return datos;
}


public Vector<Personarol> HLleerVariosPersonarol(Personarol val) throws SQLException{
return leerVariosPersonarol();
}

public boolean modificarPersonarol(int fkIdPersona, int fkIdRol) throws SQLException{
boolean exitoOperacion = true;

PreparedStatement proc=con.prepareStatement(
"call modificarPersonarol(?,?) ");
proc.setInt(1, fkIdPersona);
proc.setInt(2, fkIdRol);
proc.execute();
return exitoOperacion;


}


}// FIN CLASE: ConsultasPersonarol